Internet connected household identification for online measurement &amp; dynamic content delivery

ABSTRACT

A method, apparatus, system, and computer readable storage medium provide the ability to identify an internet connected household (ICH). An Internet Protocol (IP) address is received at an Internet entity. Determinations are made regarding whether device activity from the IP address does not exceed a defined activity threshold and whether an IP assignment age for the IP address is greater than a defined threshold age. Based on the determinations, the IP address can be identified as belonging to an ICH or not.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application and claims the benefitunder 35 U.S.C. Section 120 of the following co-pending andcommonly-assigned U.S. utility patent application(s), which is/areincorporated by reference herein:

U.S. patent application Ser. No. 17/078,869, filed on Oct. 23, 2020 (nowU.S. Pat. No. 11,463,403 issued on Oct. 4, 2022), by Brian C.DeFrancesco, Timothy C. Vanderhook, and Christopher J. Vanderhook,entitled “INTERNET CONNECTED HOUSEHOLD IDENTIFICATION FOR ONLINEMEASUREMENT & DYNAMIC CONTENT DELIVERY,” attorneys' docket number257.0100US11, which application is a continuation-in-part applicationand claims the benefit under 35 U.S.C. Section 120 of the followingco-pending and commonly-assigned U.S. utility patent application(s),which is/are incorporated by reference herein:

-   -   U.S. patent application Ser. No. 17/008,215, filed on Aug. 31,        2020 (now U.S. Pat. No. 11,310,195 issued on Apr. 19, 2022) by        Brian C. DeFrancesco, Timothy C. Vanderhook, and Christopher J.        Vanderhook, entitled “INTERNET CONNECTED HOUSEHOLD        IDENTIFICATION FOR ONLINE MEASUREMENT & DYNAMIC CONTENT        DELIVERY,” attorneys' docket number 257.26-US-C3, which        application is a continuation of and claims the benefit of U.S.        patent application Ser. No. 15/144,389, filed on May 2, 2016        (now U.S. Pat. No. 10,764,240 issued on Sep. 1, 2020), by        Brian C. DeFrancesco, Timothy C. Vanderhook, and Christopher J.        Vanderhook, entitled “INTERNET CONNECTED HOUSEHOLD        IDENTIFICATION FOR ONLINE MEASUREMENT & DYNAMIC CONTENT        DELIVERY,” attorneys' docket number 257.26-US-C2, which        application claims the benefit under 35 U.S.C. Section 120 of        U.S. patent application Ser. No. 13/895,587, filed on May 16,        2013 (now U.S. Pat. No. 9,331,921 issued on May 3, 2016), by        Brian C. DeFrancesco, Timothy C. Vanderhook, and Christopher J.        Vanderhook, entitled “INTERNET CONNECTED HOUSEHOLD        IDENTIFICATION FOR ONLINE MEASUREMENT & DYNAMIC CONTENT        DELIVERY,” attorneys' docket number 257.26-US-U1, which        application claims the benefit under 35 U.S.C. Section 119(e) of        U.S. provisional patent application Ser. No. 61/648,341, filed        on May 17, 2012, by Brian C. DeFrancesco, Timothy C. Vanderhook,        and Christopher Vanderhook, entitled “INTERNET CONNECTED        HOUSEHOLD IDENTIFICATION FOR ONLINE MEASUREMENT & DYNAMIC        CONTENT DELIVERY,” attorneys' docket number 257.26-US-P1, which        is incorporated by reference herein.

This application is related to the following co-pending andcommonly-assigned U.S. Utility patent application(s) which isincorporated by reference herein:

U.S. patent application Ser. No. 14/223,676, filed on Mar. 24, 2014, nowU.S. Pat. No. 8,996,727, issued on Mar. 31, 2015, by Brian C.DeFrancesco, Timothy C. Vanderhook, and Christopher J. Vanderhook,entitled “INTERNET CONNECTED HOUSEHOLD IDENTIFICATION FOR ONLINEMEASUREMENT & DYNAMIC CONTENT DELIVERY,” attorneys' docket number257.26-US-C1, which application is a continuation of U.S. patentapplication Ser. No. 13/895,587, filed on May 16, 2013, by Brian C.DeFrancesco, Timothy C. Vanderhook, and Christopher J. Vanderhook,entitled “INTERNET CONNECTED HOUSEHOLD IDENTIFICATION FOR ONLINEMEASUREMENT & DYNAMIC CONTENT DELIVERY,” attorneys' docket number257.26-US-U1, which application claims the benefit under 35 U.S.C.Section 119(e) of U.S. provisional patent application Ser. No.61/648,341, filed on May 17, 2012, by Brian C. DeFrancesco, Timothy C.Vanderhook, and Christopher Vanderhook, entitled “INTERNET CONNECTEDHOUSEHOLD IDENTIFICATION FOR ONLINE MEASUREMENT & DYNAMIC CONTENTDELIVERY,” attorneys' docket number 257.26-US-P1, which is incorporatedby reference herein.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present invention relates generally to identifying users on anetwork, and in particular, to a method, apparatus, and article ofmanufacture for identifying households for online measurement anddynamic content delivery.

2. Definitions/Description of the Related Art

Household

The US Census Bureau defines a household as, “A household includes allthe persons who occupy a housing unit. A housing unit is a house, anapartment, a mobile home, a group of rooms, or a single room that isoccupied (or if vacant, is intended for occupancy) as separate livingquarters. Separate living quarters are those in which the occupants liveand eat separately from any other persons in the building and which havedirect access from the outside of the building or through a common hall.The occupants may be a single family, one person living alone, two ormore families living together, or any other group of related orunrelated persons who share living arrangements.” (Seehttp://quickfacts.census.gov/qfd/meta/long_HSD310200.htm).

Internet Connected Household (ICH)

An internet connected household is a household that uses the Internet athome. The US Census Bureau reports there are 81,939,000 households thatuse the Internet at home (internet connected households) in the UnitedStates. Source: U.S. Census Bureau, Current Population Survey, October2009.

Internet Service Provider (ISP)

An ISP is a company that supplies Internet connectivity to home andbusiness customers. ISPs support one or more forms of Internet access,ranging from modem dial-up to DSL (digital subscriber line) and cablemodem broadband service to dedicated T1/T3 lines to satellite orwireless access.

Regional Internet Registry

A regional Internet registry (RIR) is an organization that manages theallocation and registration of Internet number resources within aparticular region of the world. Internet number resources include IP(internet protocol) addresses and autonomous system (AS) numbers.

The Internet Assigned Numbers Authority (IANA) delegates Internetresources to the RIRs who, in turn, follow their regional policies todelegate resources to their customers, which include Internet serviceproviders and end-user organizations.

Collectively, the RIRs participate in the Number Resource Organization(NRO), formed as a body to represent their collective interests,undertake joint activities, and coordinate their activities globally.The NRO has entered into an agreement with ICANN for the establishmentof the Address Supporting Organisation (ASO), which undertakescoordination of global IP addressing policies within the ICANNframework. (See http://en.wikipedia.org/wiki/Regional_Internetregistry).

Internet Protocol Address (IP)

An IP address is a logical address for a network adapter. Generallyspeaking, an IP address uniquely identifies computers on a TCP/IPnetwork (transmission control protocol/Internet protocol network).

An IP address can be private—for use on a local area network (LAN)—orpublic—for use on the Internet or other wide area network (WAN). IPaddresses can be determined statically (assigned to a computer by asystem administrator) or dynamically (assigned by another device on thenetwork on demand).

Two IP addressing standards are in use today. The IPv4 standard is mostfamiliar to people and supported everywhere on the Internet, but thenewer IPv6 standard is planned to replace it and is starting to bedeployed.

IPv4 addresses consist of four bytes (32 bits). Each byte of an IPaddress is known as an octet. Octets can take any value between 0 and255. Various conventions exist for the numbering and use of IPaddresses. (Seehttp://compnetworking.about.com/od/workingwithipaddresses/g/ip-addresses.htm).

Transmission Control Protocol/Internet Protocol (TCP/IP)

TCP/IP is the communication protocol for the Internet. A computercommunication protocol is a description of the rules computers mustfollow to communicate with each other. TCP/IP defines how electronicdevices (like computers) should be connected to the Internet, and howdata should be transmitted between them. Each computer must have an IPaddress before it can connect to the Internet and each IP packet musthave an address before it can be sent to another computer. (Seehttp://www.w3schools.com/tcpip/tcpip_intro.asp).

Hypertext Transfer Protocol (HTTP)

The Hypertext Transfer Protocol provides a standard for Web browsers andservers to communicate. HTTP is an application layer network protocolbuilt on top of TCP. HTTP clients (such as Web browsers) and serverscommunicate via HTTP request and response messages. (Seehttp://compnetworking. about. com/od/networkprotocols/g/bldef_http.htm).

SUMMARY OF THE INVENTION

Embodiments of the invention provide for an “Internet ConnectedHousehold Identification.” Such an identification is a system foridentifying “Households” for use in online media measurement includingbut not limited to website analytics, consumer interests and profiling,purchase activity, social activity and dynamic content deliveryincluding but not limited to media (music, video, or any multimediadigital streaming format), advertisements, and text/graphic content(articles, links, images, animations, etc.).

BRIEF DESCRIPTION OF THE DRAWINGS

Referring now to the drawings in which like reference numbers representcorresponding parts throughout:

FIG. 1 is an exemplary hardware and software environment used toimplement one or more embodiments of the invention;

FIG. 2 schematically illustrates a typical distributed computer systemutilized in accordance with one or more embodiments of the invention;

FIG. 3 illustrates an additional implementation of a network andcommunication on such a network in accordance with one or moreembodiments of the invention;

FIG. 4 illustrates publicly available “who-is” information that isutilized in accordance with one or more embodiments of the invention;

FIG. 5 is a flow chart illustrating the logical flow for identifying aninternet connected household in accordance with one or more embodimentsof the invention;

FIG. 6 illustrates details for the further processing of step 510 ofFIG. 5 in accordance with one or more embodiments of the invention; and

FIG. 7 illustrates a diagram of the linking of the IP address to aphysical household in accordance with one or more embodiments of theinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In the following description, reference is made to the accompanyingdrawings which form a part hereof, and which is shown, by way ofillustration, several embodiments of the present invention. It isunderstood that other embodiments may be utilized and structural changesmay be made without departing from the scope of the present invention.

Overview

Embodiments of the invention evaluate the IP address associated with aclient computer request and determine whether the IP address belongs toan ISP that provides residential internet service. Furtherdeterminations are made regarding device activity (from the deviceassociated with the IP address) (e.g., whether it exceeds a thresholdlevel of activity expected from a household), and an IP assignment age(e.g., whether the age of the IP address exceeds a threshold ageassociated with households). Based on the determinations, a furtherdetermination can be made regarding whether the IP address/web requestoriginates from an ICH.

Hardware Environment

FIG. 1 is an exemplary hardware and software environment 100 used toimplement one or more embodiments of the invention. The hardware andsoftware environment includes a computer 102 and may includeperipherals. Computer 102 may be a user/client computer, servercomputer, or may be a database computer. The computer 102 comprises ageneral purpose hardware processor 104A and/or a special purposehardware processor 104B (hereinafter alternatively collectively referredto as processor 104) and a memory 106, such as random access memory(RAM). The computer 102 may be coupled to, and/or integrated with, otherdevices, including input/output (I/O) devices such as a keyboard 114, acursor control device 116 (e.g., a mouse, a pointing device, pen andtablet, touch screen, multi-touch device, etc.) and a printer 128. Inone or more embodiments, computer 102 may be coupled to, or maycomprise, a portable or media viewing/listening device 132 (e.g., an MP3player, iPod™, Nook™, portable digital video player, cellular device,personal digital assistant, etc.). In yet another embodiment, thecomputer 102 may comprise a multi-touch device, mobile phone, gamingsystem, internet enabled television, television set top box, or otherinternet enabled device executing on various platforms and operatingsystems.

In one embodiment, the computer 102 operates by the general purposeprocessor 104A performing instructions defined by the computer program110 under control of an operating system 108. The computer program 110and/or the operating system 108 may be stored in the memory 106 and mayinterface with the user and/or other devices to accept input andcommands and, based on such input and commands and the instructionsdefined by the computer program 110 and operating system 108, to provideoutput and results.

Output/results may be presented on the display 122 or provided toanother device for presentation or further processing or action. In oneembodiment, the display 122 comprises a liquid crystal display (LCD)having a plurality of separately addressable liquid crystals.Alternatively, the display 122 may comprise a light emitting diode (LED)display having clusters of red, green and blue diodes driven together toform full-color pixels. Each liquid crystal or pixel of the display 122changes to an opaque or translucent state to form a part of the image onthe display in response to the data or information generated by theprocessor 104 from the application of the instructions of the computerprogram 110 and/or operating system 108 to the input and commands. Theimage may be provided through a graphical user interface (GUI) module118A. Although the GUI module 118A is depicted as a separate module, theinstructions performing the GUI functions can be resident or distributedin the operating system 108, the computer program 110, or implementedwith special purpose memory and processors.

In one or more embodiments, the display 122 is integrated with/into thecomputer 102 and comprises a multi-touch device having a touch sensingsurface (e.g., track pod or touch screen) with the ability to recognizethe presence of two or more points of contact with the surface. Examplesof multi-touch devices include mobile devices (e.g., iPhone™, Nexus S™,Droid™ devices, etc.), tablet computers (e.g., iPad™, HP Touchpad™),portable/handheld game/music/video player/console devices (e.g., iPodTouch™, MP3 players, Nintendo 3DS™, PlayStation Portable™ etc.), touchtables, and walls (e.g., where an image is projected through acrylicand/or glass, and the image is then backlit with LEDs).

Some or all of the operations performed by the computer 102 according tothe computer program 110 instructions may be implemented in a specialpurpose processor 104B. In this embodiment, some or all of the computerprogram 110 instructions may be implemented via firmware instructionsstored in a read only memory (ROM), a programmable read only memory(PROM), or flash memory within the special purpose processor 104B or inmemory 106. The special purpose processor 104B may also be hardwiredthrough circuit design to perform some or all of the operations toimplement the present invention. Further, the special purpose processor104B may be a hybrid processor, which includes dedicated circuitry forperforming a subset of functions, and other circuits for performing moregeneral functions such as responding to computer program instructions.In one embodiment, the special purpose processor is an applicationspecific integrated circuit (ASIC).

The computer 102 may also implement a compiler 112 that allows anapplication program 110 written in a programming language such as COBOL,Pascal, C++, FORTRAN, or other language to be translated into processor104 readable code. Alternatively, the compiler 112 may be an interpreterthat executes instructions/source code directly, translates source codeinto an intermediate representation that is executed, or that executesstored precompiled code. Such source code may be written in a variety ofprogramming languages such as Java™

Perl™, Basic™, etc. After completion, the application or computerprogram 110 accesses and manipulates data accepted from I/O devices andstored in the memory 106 of the computer 102 using the relationships andlogic that were generated using the compiler 112.

The computer 102 also optionally comprises an external communicationdevice such as a modem, satellite link, Ethernet card, or other devicefor accepting input from, and providing output to, other computers 102.

In one embodiment, instructions implementing the operating system 108,the computer program 110, and the compiler 112 are tangibly embodied ina non-transient computer-readable medium, e.g., data storage device 120,which could include one or more fixed or removable data storage devices,such as a zip drive, floppy disc drive 124, hard drive, CD-ROM drive,tape drive, etc. Further, the operating system 108 and the computerprogram 110 are comprised of computer program instructions which, whenaccessed, read and executed by the computer 102, cause the computer 102to perform the steps necessary to implement and/or use the presentinvention or to load the program of instructions into a memory, thuscreating a special purpose data structure causing the computer tooperate as a specially programmed computer executing the method stepsdescribed herein. Computer program 110 and/or operating instructions mayalso be tangibly embodied in memory 106 and/or data communicationsdevices 130, thereby making a computer program product or article ofmanufacture according to the invention. As such, the terms “article ofmanufacture,” “program storage device,” and “computer program product,”as used herein, are intended to encompass a computer program accessiblefrom any computer readable device or media.

Of course, those skilled in the art will recognize that any combinationof the above components, or any number of different components,peripherals, and other devices, may be used with the computer 102.

FIG. 2 schematically illustrates a typical distributed computer system200 using a network 202 to connect client computers 102 to servercomputers 206. A typical combination of resources may include a network202 comprising the Internet, LANs (local area networks), WANs (wide areanetworks), SNA (systems network architecture) networks, or the like,clients 102 that are personal computers or workstations, and servers 206that are personal computers, workstations, minicomputers, or mainframes(as set forth in FIG. 1 ). However, it may be noted that differentnetworks such as a cellular network (e.g., GSM [global system for mobilecommunications] or otherwise), a satellite based network, or any othertype of network may be used to connect clients 102 and servers 206 inaccordance with embodiments of the invention.

A network 202 such as the Internet connects clients 102 to servercomputers 206. Network 202 may utilize ethernet, coaxial cable, wirelesscommunications, radio frequency (RF), etc. to connect and provide thecommunication between clients 102 and servers 206. Clients 102 mayexecute a client application or web browser and communicate with servercomputers 206 executing web servers 210. Such a web browser is typicallya program such as MICROSOFT INTERNET EXPLORER™ MOZILLA FIREFOX™, OPERA™,APPLE SAFARI™, GOOGLE CHROME™, etc. Further, the software executing onclients 102 may be downloaded from server computer 206 to clientcomputers 102 and installed as a plug-in or ACTIVEX™ control of a webbrowser. Accordingly, clients 102 may utilize ACTIVEX™components/component object model (COM) or distributed COM (DCOM)components to provide a user interface on a display of client 102. Theweb server 210 is typically a program such as MICROSOFT'S INTERNETINFORMATION SERVER™.

Web server 210 may host an Active Server Page (ASP) or Internet ServerApplication Programming Interface (ISAPI) application 212, which may beexecuting scripts. The scripts invoke objects that execute businesslogic (referred to as business objects). The business objects thenmanipulate data in database 216 through a database management system(DBMS) 214. Alternatively, database 216 may be part of, or connecteddirectly to, client 102 instead of communicating/obtaining theinformation from database 216 across network 202. When a developerencapsulates the business functionality into objects, the system may bereferred to as a component object model (COM) system. Accordingly, thescripts executing on web server 210 (and/or application 212) invoke COMobjects that implement the business logic. Further, server 206 mayutilize MICROSOFT′S™ Transaction Server (MTS) to access required datastored in database 216 via an interface such as ADO (Active DataObjects), OLE DB (Object Linking and Embedding DataBase), or ODBC (OpenDataBase Connectivity).

Generally, these components 200-216 all comprise logic and/or data thatis embodied in/or retrievable from device, medium, signal, or carrier,e.g., a data storage device, a data communications device, a remotecomputer or device coupled to the computer via a network or via anotherdata communications device, etc. Moreover, this logic and/or data, whenread, executed, and/or interpreted, results in the steps necessary toimplement and/or use the present invention being performed.

Although the terms “user computer”, “client computer”, and/or “servercomputer” are referred to herein, it is understood that such computers102 and 206 may be interchangeable and may further include thin clientdevices with limited or full processing capabilities, portable devicessuch as cell phones, notebook computers, pocket computers, multi-touchdevices, and/or any other devices with suitable processing,communication, and input/output capability.

Of course, those skilled in the art will recognize that any combinationof the above components, or any number of different components,peripherals, and other devices, may be used with computers 102 and 206.

Internet Connected Household Identification

FIG. 3 illustrates an additional implementation of a network andcommunication on such a network in accordance with one or moreembodiments of the invention. As consumers/clients 102 use the Internet202 to connect with web server(s) 210 via HTTP(s), a Public IP address302 is attached to each HTTP request that generates as a result of suchweb browsing activity.

In a typical scenario, the devices 102 inside a household are on a LocalArea Network (LAN) 304 that is private to the Household 306. The IPaddress of each device 102 (IP addresses 303) within the household 306is assigned by the router 308 (or modem 310). The modem 310 communicateswith and receives Internet access from the ISP 312 on a wide areanetwork (WAN) 314 that is usually public. The IP address 302 assigned tothe home's modem 310 by the ISP 312 is public as it's what is used incommunication with an outside web server 210.

In some cases, multiple homes 306 will be pooled together and will sharethe same public IP 302. These are typically in the cases of sharedinternet (apartment complex, college/university housing, etc).

Furthermore, the public IP addresses 302 that the ISP 312 assigns to thehousehold's modem 310 may be static or dynamic. In either case, the mainrelevant measure is the “stickiness” or age of the IP assignment. Forexample, if an IP 302 is assigned dynamically, but only on the reset ofa modem 310, and the modem 310 is only reset once a year, the age of theIP address assignment for the Household 306 is one year.

When Household IPs assignment ages exceed a significant number of days,the Household public IP address 302 may serve as a unique identifier forall internet connected device 102 activity from within the Household 306that are using the Household's ISP internet connection (all devices 102will show the same public IP address 302 when they connect to webservers 210).

The system of Household identification (of embodiments of the invention)may use multiple criteria to evaluate each public IP address 302, thatan internet entity with web servers 210 receives, to determine if eachIP address 302 belongs to a Household 306.

Criteria 1: Public IP Belongs to an ISP that Provides ResidentialInternet Service

Every public IP address is registered with a RIR 316 (regional internetregistry), and in general, most are a part of larger IP range blocksthat belong to ISPs 312. This data is publicly available and eachorganization (ISP) 312 can be classified as providing or not providingresidential internet service based on publicly available informationregarding the company and their offerings.

For example, FIG. 4 illustrates the publicly available “who-is”information for the IP addresses 174.0.0.0/8 and 174.141.0.0/17performed using AKIN

(American Registry for Internet Numbers). The IP address 174.0.0.0/8 ispart of a larger range block of IP addresses (i.e.,174.0.0.0-174.255.255.255) that is allocated to ARIN (an RIR). Using theinformation from ARIN, the IP address block ranges assigned to differentorganizations can be determined. As illustrated, the IP address174.141.0.0/17 is part of a range block of IP addresses (i.e.,174.141.0.0-174.141.127.255) that are directly allocated to WindstreamNuvox, Inc. Windstream Nuvox is an ISP that provides residentialinternet service.

Accordingly, if an IP address 302 is registered with an RIR 316 (e.g.,in a particular region of the world) and is part of an IP range blockthat belongs to an ISP that provides residential internet service, adetermination can be made that the IP address 302 may be for an ICH.Similarly, if the ISP for that IP address does not provide residentialservice, a determination can be made that the IP address is not for anICH.

Criteria 2: Device Activity from IP Does Not Exceed Threshold for ICH

Usage Over a Period of Time

By monitoring the activity (devices, users, events) for each IP addressover a defined period of time (example 30 days), the IP addresses thatare used by non-Households (businesses and other organization) arefiltered out by the level of activity observed from these IPs over thetime period.

For example, if there are 200 devices and 100 users that connect fromthe same IP address, the IP address may be associated with significantactivity and is therefore likely that of a business or other(non-Household) organization.

In other words, the activity for each IP address is monitored over adefined period of time. If significant activity is found (i.e., above athreshold level) from a single IP address, it can be determined that theIP address is not for an ICH.

In addition to filtering out business and organizations, such a criteriaalso provides a method to remove a small percentage of households 306that have a short-lived IP assignment age. In this regard, if the IP isassigned frequently to households 306 in the ISP's customer base, theusers and devices 102 from that IP accumulate and exceed the thresholdto be considered a unique household identifier for any substantialperiod of time.

Criteria 3: The IP Assignment Age Must Be Greater Than 45 Days

In order to ensure an IP address is static enough that it can serve asan identifier for a reasonable period of time, the IP “stickiness” orassignment age is used. This is determined by observing the number ofconnecting IP addresses from the same ISP 312 over a defined period oftime (e.g., 90 days). In other words, a determination is made ifmultiple different IP addresses are connected to each other and thecombined IP assignment age of the “connected” IP addresses are utilizedin the comparison to the threshold IP assignment age (i.e., 45 days).

A “connection” between two or more IP addresses belonging to the sameISP 312 is made when an identified user has generated activity from twoIP addresses. For example, if a laptop user is indentified (e.g., by acookie) as user 123456 and the laptop participates in web browsing fromwithin an ICH with public IP 100.100.1.1, and then two days later theICH's IP is changed to 200.200.1.1 by the ISP 312, then the same userwho generated activity behind 100.100.1.1 is found generating activitybehind IP 200.200.1.1 which creates a connection between these two IPaddresses. In other words, the same user is identified as belonging tothe two IP addresses (e.g., using the cookie) and the activity on thecombined connected IP addresses are utilized when determining if the IPassignment age is greater or less than 45 days.

Beyond a threshold of allowed connections (from people physically usinga device inside another household 306—e.g., visiting a friend), theconnection rate and volume will filter short aged IP assignments frombeing identified as Internet connected households 306 for use inmeasurement and content distribution.

This provides an additional method to remove a small percentage ofhouseholds 306 that have a small IP assignment age as these IPs areassigned frequently to households 306 in the ISP's customer base and theusers and devices from that IP accumulate and exceed the threshold to beconsidered a unique household identifier for any substantial period oftime.

EXAMPLES

The application of ICH identification for media includes, but is notlimited to, measurement of distribution and dynamic content delivery,optimization and recommendation.

Measurement of Distribution/Exposure:

For online/web content owners or distribution/syndication partners, ICHidentification provides a method to measure the total ICH's exposure totheir content.

For advertiser, website owners, and analytics firms, ICH identificationprovides a standard measurement of ICH reach/exposure, advertisingreturn on investment (ROI), and de-duplicated visitation statistics.

Content Delivery, Optimization, Recommendation:

ICH data can be collected to create data stores that include interests,activities (e.g., ads viewed), actions (e.g., visit to marketer'swebsite). Such data stores can be leveraged to aid in dynamic contentselection for content to be delivered to an application or webpage. Inaddition, it can serve to optimize the placement, order, and display ofsuch content, and provide recommendations to household users foradditional content engagement.

Logical Flow

FIG. 5 is a flow chart illustrating the logical flow for identifying aninternet connected household in accordance with one or more embodimentsof the invention.

At step 502, an IP address is received at an Internet entity. Forexample, the IP address may be attached to an HTTP request received at aweb server.

At step 504, a determination is made regarding whether the IP addressbelongs to an ISP that provides residential internet service (e.g.,referred to herein as the residential internet service status). In thisregard, based on information from an RIR, the ISP assigned an IP rangeblock (that includes the IP address) can be identified. Thereafter,based on publicly available information, the ISP can be classified asproviding or not providing residential internet service. Accordingly,step 504 serves to filter out IP addresses (from further processing)that are from non-residential service based ISPs (e.g., those thatsolely provide business based services). In one or more embodiments, thepublicly available information may be gathered and stored in a database(local or network based). Thus, the database may include ISPs thatprovide residential service, ISPs that do not provide residentialservice (and/or both). A simple comparison of the ISP to the list ofISPs in the database may be conducted to determine whether the IPaddress belongs to an ISP that provides residential internet service.

At step 506, a determination is made regarding whether the deviceactivity from the IP address exceeds a defined activity threshold (e.g.,referred to herein as a device activity status). To make such adetermination, activity from the IP address may be monitored over aperiod of time. Further, a “defined activity threshold” for the level ofactivity for ICHs may be determined. For example, the average level ofactivity for ICHs may be determined based on monitoring such activityover a period of time. Alternatively, any other method may be used todetermine the activity threshold (e.g., a user specified level ofactivity, an ISP specified level of activity, etc.). Once the definedactivity threshold has been determined (e.g., obtained from a database,computed, etc.), the level is compared to the level of activity from theIP address that has been monitored. If the level of activity exceeds theactivity threshold, the system assumes that the IP address is not for anICH, and filters out the IP address from further processing. However, ifthe level of activity does not exceed the activity threshold, then theIP address is not eliminated from further consideration/processing.

At step 508, a determination is made regarding whether the IP assignmentage for the IP address is greater than a defined threshold age (referredto herein as the IP assignment age status). In this regard, step 508 isused to ensure that the IP address is static enough that it can serve asan identifier for a reasonable period of time. In other words, toeffectively use an IP address for further processing, the IP addressmust be static enough that it identifies a particular household.

Often times, an IP address is reassigned when a household restarts amodem or for a variety of other reasons. Accordingly, embodiments of theinvention may observe a number of connecting IP addresses from the ISPover a defined period of time. As described above, two IP addressesbelonging to the same ISP are “connected” when a user has generatedactivity from both of the two IP addresses (e.g., the user may beidentified from a cookie, username, registration, etc.). A largeincrease in the IP's number of connecting IPs or users indicates the IPmay have rotated and the assignment age is set back to zero (0) daysmaking it invalid to serve as a unique identifier until its assignmentage regains maturity.

Once the IP assignment age for the connecting IP addresses is computed,it can be compared to a threshold age (e.g., 45 days) to determine ifthe address is static enough to use for further processing.

At step 510, it may be determined that the IP address corresponds to anICH (e.g., per steps 502-506) with sufficient information (e.g. per step508) to enable additional processing. Thus, based on the residentialinternet service status, device activity status, and IP assignment agestatus, a determination can be made regarding whether the IP address isassociated with an ICH or not.

If the IP address is associated with/corresponds to an ICH, additionalprocessing may be performed. Such additional processing may measure theICH's exposure to content from a specific content owner. Alternatively,a data store may be created based on the device activity from the ICH.The data store may be used to store information regarding interests,activity, and actions from the device. Based on the data store,additional content (e.g., advertising or other content) may bedynamically selected and/or delivered to the device.

In addition to the above, step 510 may include various additional steps.For example, once an IP address is determined to belong to an ICH,further actions may be performed based on devices utilizing that IPaddress. For example, once a device is resolved to an IP address of anICH (e.g., via home wife), a physical address of the device may bedetermined. In this regard, the device may offer up a GPS (globalpositioning system) latitude/longitude coordinates that can be used tocoordinate/correspond to a physical address (e.g., 123 Main Street). Thephysical address may be used to create an anonymous ID (based off theaddress) which can then be used as a universal ID to resolve new IPaddresses and other devices back to that address. As an example, onceone device associated with an IP address corresponding to an ICH hasbeen determined, and a physical address has been determined, any otherIP addresses associated with the ICH may also be assigned to thatphysical address. Analysis may then be conducted on the differentdevices having the same physical address (e.g., resulting in demographicinformation for users at that physical address, access patterns forsub-groups of users at that physical address [and demographicinformation for such sub-users], etc.).

FIG. 6 illustrates details for the further processing of step 510 inaccordance with one or more embodiments of the invention. As describedabove, prior to step 510 (and the steps of FIG. 6 ), an IP address isevaluated for the following criteria: (1) the public IP address belongsto an ISP offering residential internet service; (2) the number ofdevices behind the IP address does not exceed a calculated threshold;and (3) the IP address assigned to the household must not have changedwithin a predefined timeframe. If these criteria are met, it may beconcluded that the the IP address belongs to an ICH. Thereafter,additional steps may be performed to link the IP address to a physicalhousehold address (as set forth in FIG. 6 ).

At step 602, GPS data is received. In particular, internet-connecteddevices with GPS capabilities that have also transmitted one or morelatitude and longitude coordinates to a web server, provide the GPS data(e.g., lat/lon) to a web server/system of embodiments of the invention.In this regard, GPS coordinates are received from a device that isutilizing the IP address.

At step 604, the GPS coordinates are collected and processed to beplaced into the nearest centroid of a household's physical addressdetermined to be a residence. In other words, a physical address isidentified based on the GPS coordinates (e.g., by placing/associatingthe GPS coordinates into/with a nearest centroid of a residentialphysical address).

At step 606, a mapping table of IP address and physical address (e.g.,IP-address-physical address pairs) is generated/hosted/maintained.

At step 608, the mapping table is analyzed/used. For example, ananonymous identification may be created (based on the physical address).Thereafter, the anonymous ID may be used as a universal ID to resolve anew IP address (or new device) back to the physical address.

FIG. 7 illustrates a diagram of the linking of the IP address to aphysical household in accordance with one or more embodiments of theinvention. As illustrated, within a private network (LAN) 702, devices704-708 (i.e., smartphone 704, laptop 706, and connected television 708)are connected via a router 710 (e.g., via Wifi) to a household 712. Asillustrated, devices 704-708 are accessing the LAN via assigned privateIP addresses. Further, devices 704-706 have associated GPS data (e.g.,lat/lon data).

Based on the criteria described above, it has been determined that thepublic IP address of the household 712 (e.g., Public IP 714 (via WAN)address 78.102.1.11) is an ICH. As illustrated, the public IP addresshas been assigned by ISP 716, which is allocated the range of IPaddresses by RIR 718, which is delegated Internet resources by IANA 720.Further, a website/web server 722 may maintain/provide services via theISP 716 to users (e.g., devices 704-708).

In accordance with the embodiments of the invention, once the GPScoordinates are received from devices 704-706 at step 602, the GPScoordinates are placed at the centroid of the ICH 712 (at step 604) toidentify the physical address 724. At step 606, the mapping table 726 isgenerated/hosted.

CONCLUSION

This concludes the description of the preferred embodiment of theinvention. The following describes some alternative embodiments foraccomplishing the present invention. For example, any type of computer,such as a mainframe, minicomputer, or personal computer, or computerconfiguration, such as a timesharing mainframe, local area network, orstandalone personal computer, could be used with the present invention.

The foregoing description of the preferred embodiment of the inventionhas been presented for the purposes of illustration and description. Itis not intended to be exhaustive or to limit the invention to theprecise form disclosed. Many modifications and variations are possiblein light of the above teaching. It is intended that the scope of theinvention be limited not by this detailed description, but rather by theclaims appended hereto.

What is claimed is:
 1. A computer-implemented method for identifying aninternet connected household (ICH), comprising: receiving an InternetProtocol (IP) address via an Internet connection; determining aresidential internet service status based on whether the IP addressbelongs to an Internet Service Provider (ISP) that provides residentialinternet service; determining that the IP address has not changed for adefined time period; based on the residential internet service statusand the determination that the IP address has not changed for thedefined time period, determining whether the IP address is associatedwith an ICH; receiving global positioning system (GPS) coordinates froma device that is utilizing the IP address; identifying a physicaladdress based on the GPS coordinates; and maintaining a mapping of theIP address to the physical address in a table.
 2. Thecomputer-implemented method of claim 1, wherein the determining theresidential internet service status comprises: determining, based oninformation obtained from a regional internet registry (RIR), the ISPthat has been assigned an IP range block that includes the IP address;and classifying the ISP as providing residential internet service basedon publicly available information regarding the ISP.
 3. Thecomputer-implemented method of claim 1, wherein the determining theresidential internet service status comprises: receiving an additionalIP address; determining whether the additional IP address belongs to asecond ISP that does not provide residential internet service; andfiltering out the additional IP address from further processing.
 4. Thecomputer-implemented method of claim 1, wherein the determining that theIP address is associated with an ICH further comprises determining adevice activity status by: monitoring activity from the IP address overthe defined time period; determining a defined activity threshold for alevel of activity for internet connected households; and determiningthat a level of activity from the IP address does not exceed the definedactivity threshold.
 5. The computer-implemented method of claim 1,wherein the determining that the IP address is associated with an ICHfurther comprises determining a device activity status by: receiving anadditional IP address; and determining that device activity from theadditional IP address is below a defined activity threshold; determiningthat the additional IP address is associated with a non-household basedon the device activity; and filtering out the non-household and theadditional IP address from further processing.
 6. Thecomputer-implemented method of claim 1, wherein the identifying thephysical address comprises: placing the GPS coordinates into a nearestcentroid of a physical address determined to be a residence.
 7. Thecomputer-implemented method of claim 6, further comprising: creating,based on the physical address, an anonymous identification; andutilizing the anonymous identification as a universal identification toresolve a new IP address back to the physical address.
 8. Thecomputer-implemented method of claim 6, further comprising: creating,based on the physical address, an anonymous identification; andutilizing the anonymous identification as a universal identification toresolve a new device back to the physical address.
 9. Thecomputer-implemented method of claim 6, further comprising: utilizingthe physical address to determine demographic information for users atthe physical address.
 10. The computer-implemented method of claim 6,further comprising: utilizing the physical address to determine anaccess pattern for sub-groups of users at the physical address.
 11. Acomputer-implemented method for identifying an internet connectedhousehold (ICH), comprising: receiving an Internet Protocol (IP) addressvia an Internet connection; determining a residential internet servicestatus based on whether the IP address belongs to an Internet ServiceProvider (ISP) that provides residential internet service; determining adevice activity status based on whether device activity from the IPaddress exceeds a defined activity threshold; based on the residentialinternet service status and the device activity status, determining thatthe IP address is associated with an ICH; receiving global positioningsystem (GPS) coordinates from a device that is utilizing the IP address;identifying a physical address based on the GPS coordinates; andmaintaining a mapping of the IP address to the physical address in atable.
 12. The computer-implemented method of claim 11, wherein thedetermining the residential internet service status comprises:determining, based on information obtained from a regional internetregistry (RIR), the ISP that has been assigned an IP range block thatincludes the IP address; and classifying the ISP as providingresidential internet service based on publicly available informationregarding the ISP.
 13. The computer-implemented method of claim 11,wherein the determining the residential internet service statuscomprises:: receiving an additional IP address; determining whether theadditional IP address belongs to a second ISP that does not provideresidential internet service; and filtering out the additional IPaddress from further processing.
 14. The computer-implemented method ofclaim 11, wherein the determining the device activity status comprises:receiving an additional IP address; and determining that device activityfrom the additional IP address is below the defined activity threshold;determining that the additional IP address is associated with anon-household based on the device activity; and filtering out thenon-household and the additional IP address from further processing. 15.The computer-implemented method of claim 11, wherein: the determiningthat the IP address is associated with an ICH is further based on an IPassignment age status; the method further comprises determining the IPassignment age status based on whether the IP address has not changedfor a defined time period.
 16. The computer-implemented method of claim11, wherein the identifying the physical address comprises: placing theGPS coordinates into a nearest centroid of a physical address determinedto be a residence.
 17. The computer-implemented method of claim 16,further comprising: creating, based on the physical address, ananonymous identification; and utilizing the anonymous identification asa universal identification to resolve a new IP address back to thephysical address.
 18. The computer-implemented method of claim 16,further comprising: creating, based on the physical address, ananonymous identification; and utilizing the anonymous identification asa universal identification to resolve a new device back to the physicaladdress.
 19. The computer-implemented method of claim 16, furthercomprising: utilizing the physical address to determine demographicinformation for users at the physical address.
 20. Thecomputer-implemented method of claim 16, further comprising: utilizingthe physical address to determine an access pattern for sub-groups ofusers at the physical address.